Conditionally call add_action depending on post_type?

Using OOP PHP, add your initializer actions in the __construct and create appropriate methods for handling them. From your handler you can initialize any class variable (once) you want and reference it later without having to do any further checks. Here is an example:

class my_plugin {
    private $post_type;
    private $isCustom = false;

    public function __construct() {
        add_action( 'admin_init', array( $this, 'admin_init' ) );
    }

    public function admin_init() {
        // This method is called only once, so do any initialization here.
        $this->post_type = get_current_screen()->post_type;
        $this->isCustom = self::CUSTOM_POST_TYPE == $this->post_type;
        if ( $this->isCustom ) {
            add_action('admin_footer', array($this, 'custom_footer_function'));
            add_action('save_post', array($this, 'custom_save_function'));
            add_action('delete_post', array($this, 'custom_delete_function'));
            add_filter('enter_title_here', array($this, 'custom_title_placeholder'));
        }
    }
}